package com.tanhua.server.interceptor;

/**
 * @version 1.0
 * @author： xtr
 * @date： 2021-03-07 17:40
 */

import com.tanhua.db.User;

/**
 * 登录用户信息持有者
 * 通过ThreadLocal的形式，存储登录用户的数据
 */
public class UserHolder {

    private static ThreadLocal<User> userThreadLocal = new ThreadLocal<>();

    /**
     * 向当前线程中存入user用户信息
     * @param user
     */
    public static void setUser(User user){userThreadLocal.set(user);}


    /**
     * 获取当前线程中的用户信息
     * @return
     */
    public static User getUser(){return userThreadLocal.get();}


    /**
     * 获取当前线程中登录用户的id
     * @return
     */
    public static Long getUserId(){return userThreadLocal.get().getId();}


}
